synapse a UDP
Otázka od: Martin Nedopil
29. 6. 2004 7:19
Ahoj, mam mensi problem se Synapsi. Chci nabirat data z UDP, ale nejak
nemuzu. Soket otviram takto...
sock:= TUDPBlockSocket.Create;
sock.OnStatus:=MySockOnStatus;
sock.OnReadFilter:=MySockReadFilter;
sock.CreateSocket;
sock.Bind('192.168.0.77', '7373');
no a kdyz uz se mi to povede, vidim (na Keriu) ze mi tam data tecou, ale
do MySockOnStatus ani MySockReadFilter mi to nespadne.
Vi nekdo kde udelali soudruzi z NDR chybu?
Martin
Odpovedá: Lukas Gebauer
29. 6. 2004 7:39
> Ahoj, mam mensi problem se Synapsi. Chci nabirat data z UDP, ale nejak
> nemuzu. Soket otviram takto...
>
> sock:= TUDPBlockSocket.Create;
> sock.OnStatus:=MySockOnStatus;
> sock.OnReadFilter:=MySockReadFilter;
> sock.CreateSocket;
> sock.Bind('192.168.0.77', '7373');
>
> no a kdyz uz se mi to povede, vidim (na Keriu) ze mi tam data tecou,
> ale do MySockOnStatus ani MySockReadFilter mi to nespadne.
>
> Vi nekdo kde udelali soudruzi z NDR chybu?
Ten soudruh jsi v tomto pripade ty. Chyba je v tom, ze ti uniklo,
ze Synapse je synchronni knihovna, tedy ze zadny event na oznamovani
prichopzich dat nema! ostatne i v dokumentaci je psano, ze treba
event OnStatus slouzi na monitorovnai komunikace... ne na vlastni
komunikaci!
kazdopadne je to napsane i ve FAQ... viz.
http://www.synapse.ararat.cz/wiki/index.php?page=FAQ a otazka:
"Where
Is The Event For Reading Data?"
Pokud chces prijimat UDP packety a nevis, kdy packety prijdou (tedy
UDP server), podivej se treba na demo SNMP agenta. Ta mas krasny
priklad, jak se to dela.
--
Lukas Gebauer.
E-mail: gebauerl@mlp.cz
http://www.ararat.cz/synapse/ - Ararat Synapse - TCP/IP Lib.